﻿using System;

namespace ExtensionApplication
{
    public static class ExtensionString
    {
        //向 String 类扩展一个统计单词数量的方法
        public static int CountWord(this String str)
        {
            return str.Split(' ').Length;
        }
    }

    class MainClass
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("单词数量：" + "Hello World".CountWord());//没有参数
            Console.ReadKey();
        }
    }
}
/*
 
展方法

扩展方法可以实现在不需要修改目标类，也不需要继承目标类的情况下为其添加一个方法。

规则：

 1、扩展类必须为静态类，扩展方法必须为静态方法。
 2、扩展方法的第1个形参开头必须使用 “this” 关键字然后再填写扩展的目标类。
 3、如果需要接收参数则从第2个参数开始算起，第1个参数在真正调用方法时是隐藏的。 

 */